TOP

Alias SQL

Descrizione degli alias SQL

Gli alias SQL vengono utilizzati per assegnare un nome temporaneo a una tabella o colonna in una tabella.

Gli alias vengono spesso utilizzati per rendere più leggibili i nomi delle colonne.

Un alias esiste solo per la durata della richiesta corrente.

Un alias viene creato utilizzando la parola chiave AS.


Sintassi degli alias di colonna

SELECT column_name AS alias_name
FROM table_name

Sintassi della tabella alias

SELECT column_name(s)
FROM table_name AS alias_name

Banca dati dimostrativa

Di seguito è riportato un esempio della tabella "Customers" ("Clienti"):

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico

E l'esempio dalla tabella "Orders" ("Ordini"):

ProductIDOrderIDCustomerIDEmployeeIDOrderDateShipperID
1102489051996-07-043
2102498161996-07-051
3102503441996-07-082

Esempi di alias per colonne

La seguente istruzione SQL crea due alias, uno per la colonna CustomerID e uno per la colonna CustomerName:

Run SQLSELECT CustomerID AS ID, CustomerName AS Customer 
FROM Customers

La seguente istruzione SQL crea due alias: uno per la colonna CustomerName e uno per la colonna ContactName.

Nota: sono necessarie virgolette doppie o parentesi quadre se l'alias contiene spazi:

Run SQLSELECT CustomerName AS Customer, ContactName AS 'Contact Person' 
FROM Customers

La seguente istruzione SQL crea un alias denominato "Address" ("Indirizzo") che concatena quattro colonne (indirizzo, codice postale, città e paese):

SELECT CustomerName, Address + ', ' + PostalCode + ' ' + City + ', ' + Country AS Address 
FROM Customers

Per far funzionare l'istruzione SQL precedente in MySQL, utilizzare quanto segue:

Run SQLSELECT CustomerName, CONCAT(Address,', ',PostalCode,', ',City,', ',Country) AS Address 
FROM Customers

Per far funzionare l'istruzione SQL precedente in Oracle, utilizzare quanto segue:

SELECT CustomerName, (Address || ', ' || PostalCode || ' ' || City || ', ' || Country) AS Address 
FROM Customers

Un esempio di alias per le tabelle

La seguente istruzione SQL seleziona tutti gli ordini del cliente con CustomerID = 4 ("Around the Horn"). Utilizziamo le tabelle "Customers" e "Orders" e diamo loro rispettivamente gli alias di tabella "c" e "o" (qui utilizziamo gli alias per rendere la query SQL più breve):

Run SQLSELECT o.OrderID, o.OrderDate, c.CustomerName 
FROM Customers AS c, Orders AS o 
WHERE c.CustomerName = 'Around the Horn' AND c.CustomerID = o.CustomerID

La seguente istruzione SQL è uguale a quella precedente, ma senza gli alias:

Run SQLSELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.CustomerName = 'Around the Horn' AND Customers.CustomerID = Orders.CustomerID

Gli alias possono essere utili quando:

  • Nella query è coinvolta più di una tabella;
  • La query utilizza funzioni;
  • I nomi delle colonne sono grandi o illeggibili;
  • Due o più colonne sono unite insieme.